// The Vue build version to load with the `import` command
// (runtime-only or standalone) has been set in webpack.base.conf with an alias.
import Vue from 'vue'
import App from './App'
import router from './router'
import ElementUI from 'element-ui'
import 'element-ui/lib/theme-chalk/index.css'
import VueCookies from 'vue-cookies'
import axios from 'axios'

Vue.config.productionTip = false
Vue.use(ElementUI)
Vue.use(VueCookies)
router.beforeEach((to, from, next) => {
  console.log(to)
  if (to.fullPath.includes('admin')) {
    axios({
      withCredentials: true,
      maxRedirects: 0,
      method: 'post',
      url: '/admin/auth',
      headers: {
        'Content-Type': 'multipart/form-data',
        'Access-Control-Allow-Origin': 'true'
      },
      timeout: 4000
    }).then((res) => {
      if (res.status === 200) {
        next()
      } else {
        this.$router.push('404')
      }
    })
  } else {
    axios({
      withCredentials: true,
      maxRedirects: 0,
      method: 'post',
      url: '/user/auth',
      headers: {
        'Content-Type': 'multipart/form-data',
        'Access-Control-Allow-Origin': 'true'
      },
      timeout: 4000
    }).then((res) => {
    // if (res.status == 200)
      if (res.status === 200) {
        next()
      } else {
        this.$router.push('*')
      }
    })
  }
})
/* eslint-disable no-new */
new Vue({
  el: '#app',
  router,
  components: { App },
  template: '<App/>'
})
